package com.tedu.day02.oop;

/**
 * final关键字--最终
 * 作用：修饰类、属性（普通属性、成员变量）、方法
 *（1）final修饰的类---不可被继承，但正常创建对象
 *    语法：修饰符 final class 类名｛｝
 *    典型final类：String字符串
 *（2）final修饰方法：不可以重写，但可以重载【锁死】
 *    【锁死】 一般用final修饰方法目的：镇住方法，防止继承它的类修改（覆盖）它
 *    语法：修饰符 final 返回值 方法名（）｛｝
 */
class People{
    public /*final*/ void test(){ //方法：final  重写失败  锁死【不能被锁死】
        System.out.println("父类--重写");
    }
}
class Man extends People{
    public void test(){
        System.out.println("子类--重写");
    }
    public void test(int i,int j){ //重载：不受final方法限制
        System.out.println("子类--重载");
    }
}
class WoMan extends Man{ //锁死方法，防止多层继承：重写[覆盖]方法
    //public void test(){
    //    System.out.println();
    //}
}



public class final关键字 {
    public static void main(String[] args) {
        Man man=new Man();
        man.test(); //final修饰方法【来自父类】
        man.test(1,1); //重载【拓展：不改变原来的方法】
    }
}

